<?php
class listStudent extends student {
	function __construct() {
		parent::__construct();
	}
	public function traerTodo($fk_profesor) {
		$arr_result = array();
		$query = "SELECT a.id,a.nombre,a.apellido,a.email,
					CASE axp.estado
						WHEN 1 THEN 'Sin confirmar'
						WHEN 2 THEN 'Registrado'
						WHEN 3 THEN 'Potencial'
						WHEN 4 THEN 'Regular'
						ELSE 'No regular'
					END as 'estado'
				FROM alumnos a, alumnosxprofesor axp
				WHERE (axp.fk_alumno = a.id) AND (axp.fk_profesor = 1) AND (a.estado > 0) AND (axp.estado > 0)
				ORDER BY a.nombre;";
		$result = mysql_query($query);
		$i = 0;
		$arr_grupos = $this->traerCursosDeAlumnos($fk_profesor);
		while ($reg = @mysql_fetch_array($result)) {
			$arr_result[$i]['id'] = $reg['id'];
			$arr_result[$i]['nombre'] = $reg['nombre'];
			$arr_result[$i]['apellido'] = $reg['apellido'];
			$arr_result[$i]['email'] = $reg['email'];
			$arr_result[$i]['estado'] = $reg['estado'];
			$arr_result[$i]['grupos'] = '';
			if (array_key_exists($reg['id'], $arr_grupos)) {
				foreach ($arr_grupos[$reg['id']] as $grupo)	$arr_result[$i]['grupos'] .= $grupo['nombre'].',';
				$arr_result[$i]['grupos'] = substr($arr_result[$i]['grupos'], 0,(strlen($arr_result[$i]['grupos'])-1));
			} else $arr_result[$i]['grupos'] = 'Sin curso';
			$i++;
		}
		return $arr_result;
	}
	private function traerCursosDeAlumnos($fk_profesor) {
		$arr_result = array();
		$query = 'SELECT g.id,g.nombre,axg.fk_alumno FROM grupos g,alumnosxgrupo axg WHERE (g.fk_origen = '.$fk_profesor.') AND (g.estado = 1) AND (g.id = axg.fk_grupo) ORDER BY g.fecha DESC;';
		$result = mysql_query($query);
		$arr_count = array();
		while ($reg = mysql_fetch_array($result)) {
			if (!array_key_exists($reg['fk_alumno'], $arr_count)) $arr_count[$reg['fk_alumno']] = 0; else $arr_count[$reg['fk_alumno']]++;
			//$arr_result[$reg['fk_alumno']][$arr_count[$reg['fk_alumno']]]['id'] = $reg['id'];
			$arr_result[$reg['fk_alumno']][$arr_count[$reg['fk_alumno']]]['nombre'] = $reg['nombre'];
		}
		return $arr_result;
	}
}
?>